package com.tbit.uqbike.webmanager.dao.core;

import com.tbit.uqbike.object.pojo.WorkOrderVO;
import com.tbit.common.entity.pojo.vo.DateResult;
import org.apache.ibatis.annotations.Param;

import java.util.Collection;
import java.util.List;
import java.util.Map;

public interface WorkOrderDao {

    /**
     * 查询换电工单领取的记录图表
     */
    List<DateResult> statisticsByTime(Map<String, Object> map);

    /**
     * 查询分区换电工单领取的记录图表
     */
    List<DateResult> statisticsByTimeAndRegionId(Map<String, Object> map);

    /**
     * 查询换电工单详情
     */
    List<WorkOrderVO> queryPage(Map<String, Object> map);

    /**
     * 查询换电工单详情总数
     */
    Integer queryCount(Map<String, Object> map);

    /**
     * 导出详情的数据
     */
    List<WorkOrderVO> excelPage(Map<String, Object> map);

    /**
     * 根据条件查询总览
     */
    List<WorkOrderVO> getBusinessNo(Map<String, Object> map);

    /**
     * 根据分区条件查询总览
     */
    List<WorkOrderVO> getBusinessNoByRegion(Map<String, Object> map);

    /**
     * 修改工单的审核状态
     */
    Integer amendAuditState(WorkOrderVO workOrderVO);

    /**
     * 根据业务id查询对应的工单记录
     */
    WorkOrderVO getDataById(Integer businessNO);

    List<WorkOrderVO> listByBusinessNo(@Param("businessNoList") Collection<Integer> businessNO);

}
